Printing system and printing apparatus

ABSTRACT

A printer receives changes to printing conditions by a user when executing reprinting. The printer selects whether to execute reprinting based on application data held in a host computer, or execute reprinting based on printing data held in the printer. If the printer selects executing of reprinting based on application data, the reprint request is sent to the host computer. If the printer selects executing of reprinting based on printing data held in the printer, reprinting is performed based on printing data held in the printer.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a printing system and a printingapparatus.

2. Description of the Related Art

With a printing apparatus which receives a print job from an informationprocessing device such as a host computer (hereafter called host) andperforms printing processing, sometimes the printed material output bythe printing processing is not what the user has desired. In such anevent, the user returns to the host, selects the document to be printedagain, starts the printing setting screen and sets the desired printingconditions to perform reprinting.

A method has been proposed to improve this complicated situation, bystoring the printing data to a storage device within the printingapparatus and reprinting this.

Also, specifying instructions set beforehand as the host by the printingapparatus (for example, instructions for reprinting an entire document(or a portion thereof) which is created by a document creating softwareand immediately prior instructed to print) and transmitting thespecified instructions to the specified host has been proposed (JapanesePatent No. 3274641).

However, with a proposal for saving the above-described printing data inthe storage device within the printing apparatus, the printed data isall saved, and therefore only the amount of resources the storage devicehas can be saved, so there has been a disadvantage wherein the number ofreprintable jobs could influence the storage device resources of theprinting apparatus. Also, when a setting not changeable at the userinterface of the printing apparatus is desired to be changed, there hasbeen a disadvantage of needing to perform complicated operations such asthat described above after returning to the host.

Also, with the above-described (Japanese Patent No. 3274641), only theinstructions set beforehand could be transmitted. Accordingly, if theuser desires that the host execute other processing (such as when adocument other than the immediately prior printed document is to bereprinted, or when the user desires to freely change printing settingsand perform reprinting), there has been a disadvantage wherein the usermust return to the host and perform the complicated operations asdescribed above.

Thus, as means for solving these problems, a “sample printing function”has been proposed. With this function, even after a job is transmittedfrom the host to the printing apparatus, the printing data of the job isheld at the host without deleting it, and the user who has gone toremove the printed material from the printing apparatus side returns tothe host, can use the data held therein and can perform reprinting.

This function only saves necessary printing data, and so the burden onthe storage device resources is low. However, this function can be usedonly after this function is selected on a host setting screen in advancebefore first loading a document to be printed on the printing apparatus,and then performing printing setting.

Accordingly, when loading a document to be printed from the host to theprinting apparatus, the user must consciously select this function. Withsuch a situation, this is useful to a user who has mastered thefunction, but situations can be conceived of a user who does not knowthe function or who knows the function but has forgotten to select thefunction and thus loads the job without selecting the function.

Thus, constructing a printing environment which enables reprint jobs asdesired by the user without relying on the expert level of the user orthe storage device resources of the printing apparatus is desired.

SUMMARY OF THE INVENTION

Embodiments of the present invention have taken the above points intoaccount and provide an improved printing system and printing apparatus.

Further, an embodiment of the present invention provides a printingsystem and printing apparatus which appropriately selects whether toexecute reprinting based on application data held in an informationprocessing apparatus or whether to execute reprinting based on theprinting data held in the printing apparatus, according to the printingconditions which are changed at the time of reprinting.

As many apparently widely different embodiments of the present inventioncan be made without departing from the spirit and scope thereof, it isto be understood that the invention is not limited to the specificembodiments thereof except as defined in the appended claims. Furtherfeatures of the present invention will become apparent from thefollowing description of exemplary embodiments with reference to theattached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate numerous embodiments, features andaspects of the invention and, together with the description, serve toexplain the principles of the invention.

FIG. 1 is a block diagram of an example of a printing systemconfiguration applicable to an embodiment of the present invention.

FIG. 2 is a configuration diagram of a typical printing processingconfiguration with a host computer which can communicate with a printingapparatus such as a printer.

FIG. 3 is a block diagram of an example of a printing processingconfiguration with the printing system shown in FIG. 1.

FIG. 4 is a data configuration diagram of an example of host side printjob data according to the present embodiment.

FIG. 5 is a data configuration diagram of an example of printingapparatus side print job data according to the present embodiment.

FIG. 6 is a model diagram of an example of an operating unit of theprinter shown in FIG. 1.

FIG. 7 is a model diagram of an example of a key input unit shown inFIG. 6.

FIG. 8 is a model diagram of an example of a touch panel portion shownin FIG. 6.

FIG. 9 is a model diagram of an example of an operating screen foroperating job history.

FIG. 10 is a model diagram of an example of a dialog box for selectingdeleting or reprinting of a job of which the history is managed.

FIG. 11 is a model diagram of an example of a dialog box displayed inthe case that deleting is specified for a job of which the history ismanaged.

FIG. 12 is a model diagram of an example of a dialog box displayed inthe case that reprinting is specified for a job of which the history ismanaged.

FIG. 13 is a model diagram of an example of a screen for performingprinting setting in the case that a re-execution request is input fromthe operating unit of the printer.

FIG. 14 is a model diagram of an example of a dialog box displayed onthe CRT of the host computer in the case that the host computer receivesreprinting instructions from the printer.

FIG. 15 is a model diagram of the state of the reprinting requestmonitoring unit having started up to the point of the screen directlyprior to printing, due to a reprinting instruction.

FIG. 16 is a flowchart showing an example of a first control processingsequence relating to the first embodiment.

FIG. 17 is a flowchart showing an example of a second control processingsequence relating to the first embodiment.

FIG. 18 is a flowchart showing an example of a third control processingsequence relating to the first embodiment.

FIG. 19 is a flowchart showing an example of a fourth control processingsequence relating to the first embodiment.

FIG. 20 is a diagram describing a memory map of a storage medium(recording medium) storing various types of data processing programswhich are readable with an information processing device and printingapparatus configuring the printing system relating to the firstembodiment.

FIG. 21 is a model diagram of a screen shown on the touch panel portion.

FIG. 22 is a model diagram of a screen shown on the touch panel portion.

FIG. 23 is a model diagram of a screen shown on the touch panel portion.

FIG. 24 is a model diagram of a screen shown on the touch panel portion.

FIG. 25 is a model diagram of a screen shown on the touch panel portion.

FIG. 26 is a model diagram of a screen shown on the touch panel portion.

FIG. 27 is a flowchart showing a control processing sequence relating toa second embodiment.

DESCRIPTION OF THE EMBODIMENTS

The present invention will now be described in detail with reference tothe drawings showing various embodiments thereof. In the drawings,elements and parts which are identical throughout the views aredesignated by identical reference numerals, and duplicate descriptionthereof is omitted.

First Embodiment

The embodiments relating to the present invention will be described indetail below with reference to the diagrams.

FIG. 1 is a block diagram of an example of a printing systemconfiguration relating to an embodiment of the present invention.

In FIG. 1, reference numeral 3000 denotes a host computer configuredwith an information processing device. The host computer 3000 has a CPU1 for executing document processing wherein diagrams, pictures, text,and charts (including calculation charts) are combined therewithin,based on a document processing program stored in a ROM 3 programming ROMor an external memory 11. The CPU 1 performs overall control of thevarious devices connected to a system bus 4.

An operating system program serving as a control program for the CPU 1,a printer driver to be described later, and so forth, are stored on theROM 3 programming ROM or the external memory 11. Also, font data and soforth to be used in the event of document processing is stored on theROM 3 programming ROM or the external memory 11. Further, various typesof data used for the document processing and the like, is stored on theROM 3 programming ROM or the external memory 11.

A RAM 2 functions as the primary memory, work area, and so forth of theCPU 1.

A keyboard controller (KBC) 5 receives key input from a keyboard 9 or apointing device or the like. Here, various setting items to be used forposter printing which will be described later is included in the datainput via the keyboard 9.

A CRT controller (CRTC) 6 controls a CRT display (CRT) 10. Note that thedisplay device is not limited to a CRT, and may be a liquid crystaldisplay or the like.

A disk controller (DKC) 7 controls access between external memory 11such as a hard disk (HD), a floppy disk (FD) and so forth. The externalmemory 11 stores a boot program, various applications, font data, userfiles, editing files, printer control command generating programs(hereafter, printer drivers), and so forth.

A printer control (PRTC) 8 is connected to a printer 1500 via abi-directional interface (interface) 21, and executes communicationcontrol processing with the printer 1500. Note that the host computer3000 may be configured so as to use a network interface card (NIC) 22 tobe communicable with the printer 1500 via a network. Also, there may bemultiple host computers or printers on the network.

Note that, in an embodiment, the CPU 1 executes outline font rendering(rasterizing) processing to the display information RAM which is set onthe RAM 2 for example, enabling the same image as the image to beprinted to be displayed on the CRT 10.

Also, the CPU 1 opens various windows which are registered based oncommands instructed by a mouse cursor or the like on the CRT 10, andexecutes various data processing. When the user executes printing, awindow relating to print setting is opened, and the user can performsettings, or set printing processing methods as to the printer driverincluding selecting printer modes.

The printer 1500 is controlled by the CPU 12. The CPU 12 outputs animage signal serving as output information to a printing unit (printerengine) 17 connected to the system bus 15, via a printing unit interface(I/F) 16, based on control programs and so forth which are stored in theROM 13 programming ROM or control programs and so forth which are storedin an external memory 14. Also, the control programs and so forth forthe CPU 12 are stored in the ROM 13 programming ROM.

Font data to be used when generating the above-mentioned outputinformation is stored in the ROM 13 font ROM. Also, when using a printerwith no external memory 14 such as a hard disk and so forth, theinformation used on the host computer and so forth is stored on a ROM 13data ROM.

The CPU 12 is configured to enable communication processing with thehost computer 3000 via the input unit 18, and so the information withinthe printer and so forth can be communicated to the host computer 3000.Note that the printer 1500 can be configured to use the networkinterface card (NIC) 23 to enable communication with the host computer3000 via a network.

A RAM 19 functions as the primary memory, work area, and so forth of theCPU 12, and is configured so that the memory capacity can be expanded bythe option RAM which is connected to an expansion port. In anembodiment, the RAM 19 is used for an output information renderingregion, environment data storing region, NVRAM, and so forth.

The external memory 14 denotes a hard disk (HD), IC card, and so forth.This external memory 14 is subjected to access control by a memorycontroller (MC) 20. The external memory 14 is connected as an option,and stores font data, emulation programs, form data, and so forth.

The external memory 14 should not be limited to only one, but may haveseveral memory devices, and may be configured so that multiple externalmemory devices which store programs for deciphering built-in fonts andoption cards, as well as printer control languages of differentlanguages, can be connected. Further, the external memory 14 may have aNVRAM to store printer mode setting information from an operating unit1501.

The operating unit 1501 includes a switch for operating, a displaydevice with a touch panel, an LED display device and so forth.

Note that the printing unit (printer engine) 17 may be of a laser beammethod or an electronic photograph method other than a laser beam method(such as an LED method). Also, other printing methods such as a liquidcrystal shutter method, injecting method, heat transfer method, or asublimation method can also be applied to the present invention.

Further, the printer 1500 may be an MFP (Multi Function peripheral).

FIG. 2 is a configuration diagram showing a typical printing processingconfiguration with a host computer which can communicate with theprinting apparatus of a printer and so forth.

As shown in FIG. 2, an application 201, graphics engine 202, printerdriver 203, and system spooler 204 exist as files which are saved in theexternal memory 11. Then in the event of being executed, these serve asprogram modules which are loaded on the RAM 2 and executed by theoperating system which is executed by the CPU 1 or the modules used.

Also, the application 201 and printer driver 203 can be added to a FD orCD-ROM of the external memory 11 or to the HD of the external memory 11via an unshown network.

The application 201 stored in the external memory 11 is loaded on theRAM 2 by the CPU 1 and executed. Then, in the event of printing fromthis application 201 to the printer 1500, a graphics engine 202, whichis similarly loaded on the RAM 2 and is executable, is used to performoutput (drawing).

The graphics engine 202 similarly loads a printer driver 203 preparedfor each printing apparatus on the RAM 2 from the external memory 11 bythe CPU 1, and uses the printer driver 203 to convert the output fromthe application 201 into a printer control command.

The converted printer control command is arranged to be output to theprinter 1500 by way of a system spooler 204 loaded on the RAM 2 by theoperating system which is executed by the CPU 1, via an interface 21.

The printing system according to the present embodiment has aconfiguration for temporarily spooling the printing data from theapplication 201 with intermediate code data as shown in FIG. 3, inaddition to a printing system made up of the printer 1500 and hostcomputer 3000 shown in FIG. 2.

FIG. 3 is a block diagram showing an example of the printing processingconfiguration with the printing system shown in FIG. 1, and has aprinting processing configuration wherein the system shown in FIG. 2 isexpanded. Note that items similar to those in FIG. 2 have the samereference numerals.

As shown in FIG. 3, the printing processing configuration according tothe present embodiment has a configuration to temporarily generate aspool file 303 made up of intermediate code in the event of sending aprinting command from the graphics engine 202 to the printer driver 203.

Note that, in an embodiment, with the system shown in FIG. 2, theapplication 201 is released from the printing processing at the point intime that the printer driver 203 has completed converting all of theprinting commands from the graphics engine 202 to the printer controlcommand.

Conversely, with the system shown in FIG. 3, this is at the point intime that the spooler 302 converts all of the printing commands intointermediate code data and outputs to the spool file 303. Normally, thelatter can be completed in a shorter time.

Also, with the system shown in FIG. 3, processing can be done with thecontent in the spool file 303. Thus, functions without applications canbe realized, such as shrinking several pages of the printing data fromthe application 201 into one page and printing this. Also, this enablesrealizing of an enlarging printing function (poster printing function).

For such objects, the system shown in FIG. 2 has been expanded, such asspooling with intermediate code data, as shown in FIG. 3.

Note that, in an embodiment, in order to perform processing of theprinting data, settings are performed from the window (setting screen)provided by the normal printer driver 203, and the printer driver 203 iscontrolled to stored the setting content thereof to a RAM 2 or externalmemory 11.

FIG. 3 will now be described in detail. As shown in FIG. 3, with thisexpanded processing method, the printing command from the graphicsengine 202 is received by the dispatcher 301.

The dispatcher 301 loads the spooler 302 stored on the external memory11 onto the RAM 2 if the printing command received from the graphicsengine 202 is the printing command issued from the application 201 tothe graphics engine 202. Then, the dispatcher 301 sends the printingcommand to the spooler 302 instead of the printer driver 203.

The spooler 302 converts the received printing command into anintermediate code and outputs this to the spool file 303. Also, thespooler 302 obtains the processing settings relating to the printingdata which is set for the printer driver 203, and saves this on thespool file 303. In an embodiment, the spool file 303 is generated as afile on the external memory 11, but in another embodiment, the spoolfile 303 may be generated as a file on the RAM 2.

Further, the spooler 302 loads the spool file manager 304 which isstored on the external memory 11 onto the RAM 2, and communicates thespool file 303 generating situation to the spool file manager 304. Afterthis, the spool file manager 304 determines whether or not printing canbe performed according to the content of the processing settingsrelating to the printing data saved on the spool file 303.

In the event that the spool file manager 304 determines that printingcan be performed using the graphics engine 202, the de-spooler 305stored on the external memory 11 is loaded onto the RAM 2. Then thespool file manager 304 instructs the de-spooler 305 to perform printingprocessing for the intermediate code written in the spool file 303.

The despoiler 305 processes the intermediate code included in the spoolfile 303 according to the content for process settings included in thespool file 303, and once more outputs via the graphics engine 202. Inthis event, the spool file manager 304 displays the printing progresssituation.

Also, in the case that the printing command received from the graphicsengine 202 is the printing command issued from the despoiler 305 to thegraphics engine 202, the dispatcher 301 sends the printing command tothe printer driver 203 instead of the spooler 302.

The printer driver 203 generates a printer control command and outputsthis to the printer 1500 via the system spooler 204.

Note that the application 201 is running on the host computer 3000, andcan send the print job to the printer 1500 using the printer driver 203.When transmitting a print job, the application 201 generates the hostside print job data 400 such as that shown in FIG. 4 and saves this tothe external memory 11.

Note that the process of generating the host side print job data 400 orsaving this to the external memory 11 may be configured to be performedby the printer driver 203. Also, a configuration may be made such thatmeans for monitoring the transmission of the print job to the printer1500 is provided, and these means generate the host side job data 400and saves this to the external memory 11. In other words, any means maybe configured so long as it is the means of the host computer 3000 whichsaves the host side print job data 400 to the external memory 11.

Note that a configuration may be made wherein saving the host side printjob data 400 to the external memory 11 is limited, based on the numberof jobs held which is set beforehand in the external memory 11, opencapacity of the external memory 11 and so forth. In other words, in theevent that the job number in the host side print job data 400 held inthe external memory 11 exceeds the number set beforehand (for example,100 jobs), generating/saving processing of the host side print job data400 is not executed. Also, in the event that the open capacity of theexternal memory 11 reaches within a threshold (for example, 10%) of avalue set beforehand, generating/saving processing of the host sideprint job data 400 is not executed.

Also, the CPU 1 may be configured to delete any host side print job data400 exceeding a time period (for example, 3 days) set beforehand fromthe external memory 11.

FIG. 4 is a data configuration diagram showing an example of the hostside print job data 400 according to the present embodiment.

As shown in FIG. 4, the host side print job data 400 includes printingsettings 402, application information 403, printing data 404, and a jobID 401 as a key to uniquely specify the print job.

The job ID 401 shows the unique job ID given by the application 201 atthe time of printing, and has a 1-to-1 relationship with the print job.With the printing data 404, in the event that data of the application201 can be directly saved, the application 201 saves the applicationdata saved immediately prior to printing as the printing data 404. Onthe other hand, in the event that the data of the application 201 cannotbe directly saved, the data sent to the printer driver 203 is saved asthe printing data 404.

Also, in the event that the printing data 404 is of a data format whichcan bundle the printing settings, the printing setting information isincluded in the printing data 404, and nothing is saved in the printingsettings 402. On the other hand, in the event that the data format ofthe printing data 404 cannot bundle the printing settings, or if theprinting data 404 is the data sent to the printer driver 203, theprinting setting information at the time of printing is saved to theprinting settings 402.

Information specifying the application having performed the printing issaved to the application information 403.

Also, the printer driver 203 transmits the printing data to the printer1500 at time of printing with the job ID 401 corresponding to the printjob attached thereto.

Also, a reprinting request monitoring unit 306 (FIG. 3) which receivesinstructions from the printing apparatus and operates accordingly isadded to the host computer 3000. In an embodiment, the reprintingrequest monitoring unit 306 is realized by the CPU 1 of the hostcomputer 3000 reading to the program RAM 2 stored on the external memory11 and executing this. The reprinting request monitoring unit 306 has afunction for monitoring a specified communication port of the hostcomputer 3000. Then the reprinting request monitoring unit 306 executesthe reprinting processing, shown in the flow in FIGS. 18 and 19 to bedescribed later, with the host computer 3000, upon the reprintingrequest being received at the communication port being monitored.

Accordingly, in the event that the printer 1500 performs reprintinginstructions, the instructions are made as to this communication port.

Note that in the event there is a printing setting file at a positiondetermined in the external memory 11, the printing setting interface isinitialized with the printing settings written in this printing settingfile.

When the printing data is received from the host computer 3000, the CPU12 of the printer 1500 executes printing processing, but in this event,printing apparatus side print job data 500 such as that shown in FIG. 5is saved to the external memory 11.

In an embodiment, a configuration is made wherein the CPU 12 can limitsaving the printing apparatus side print job data 500 to the externalmemory 14, based on the number of jobs held which is set beforehand inthe external memory 14, open capacity of the external memory 11 and soforth. In other words, in the event that the number of jobs in theprinting apparatus side print job data 500 held in the external memory14 exceeds the number set beforehand (for example, 100 jobs), the CPU 12does not execute generating/saving processing of the printing apparatusside print job data 500. Also, in the event that the open capacity ofthe external memory 14 reaches within a threshold (for example, 10%) ofa value set beforehand, the CPU 12 does not execute generating/savingprocessing of the host side print job data 400.

Also, the CPU 12 may be configured to delete any printing apparatus sidejob data 500 exceeding a time period (for example, 3 days) setbeforehand from the external memory 14.

FIG. 5 is a data configuration diagram showing an example of theprinting apparatus side print job data 500 according to the presentembodiment. As shown in FIG. 5, the printing apparatus side print jobdata 500 includes a job name 502, printing source host PC name 503,printing source host PC IP address 504, printing data 505, and a job ID501 as a key to uniquely specify the print job.

The job ID 501 shows the unique job ID given at the time of printing,and has a 1-to-1 relationship with the print job (that is to say, thejob ID 401 in FIG. 4).

Actions at the time of performing reprinting will be described belowwith reference to FIG. 3.

For reprinting, there are two types of methods, namely, a method forperforming reprinting by using the printing data saved on the printer1500 (that is to say, 404 in FIG. 4) and a method for performingreprinting by using the printing data saved on the host computer 3000(that is to say, 505 in FIG. 5).

Reprinting processing when using printing data saved in the printer 1500will be described.

In this event, first, the user uses the operating unit 1501 to selectthe job to be reprinted from a list of printer side print job data savedon the external memory 14, and instructs reprinting of the printing datasaved in the printer 1500. Corresponding to this operation, the CPU 12of the printer 1500 performs controls for reprinting, using the printingdata associated with the above selected job.

Also, in this event, the user can change printing settings which arechangeable with the operating 1501 as necessary. However, reprintingcannot be performed if the printing data does not exist in the printerside print job data.

Next, a case for executing reprinting using the printing data saved onthe host computer 3000 will be described.

In this event also, similar to the above-described situation, the useruses the operating unit 1501 to select a printing data job to bereprinted which is saved on the host computer 3000 from a list ofprinter side print job data which is saved on the external memory 14,and instructs the reprinting thereof. Corresponding to this operation,the CPU 12 of the printer 1500 obtains the job name 502 of the aboveselected job, the printing source host PC name 503 serving as theprinting source host computer information of the job to be reprinted,and the IP address 504 of the printing source host PC. Further, usingthe obtained information, the CPU 12 of the printer 1500 performscontrols to transmit the reprinting instructions to which are attachedthe job ID 501 to a specified communication port from the printer 1500to the host computer 3000.

On the other hand, the reprinting request monitoring unit 306 of thehost computer 3000 having received the reprinting instructions uses thejob ID attached to the received reprinting instructions, and obtainshost side print job data having a matching job ID from the externalmemory 11. Then, the reprinting request monitoring unit 306 obtainsprinting data 404 from the obtained host side print job data, and ifnecessary, obtains the printing application information 403 and theprinting setting information 402. In the event that the obtainedprinting data 404 is application data, the reprinting request monitoringunit 306 performs controls to create a state of the first printing byopening the printing data with the application shown in the printingapplication information 403.

Note that, in an embodiment, in the event the data format cannot savethe printing settings to the printing data 404, the reprinting requestmonitoring unit 306 performs controls to dispose the information of theprinting setting information 402 as a file to a specified position onthe external memory 11. Thus, when the application 201 uses the printerdrive 203 to reprint, the user can perform reprinting by using theinterface on the printer driver 203 wherein printing settings at thetime of the first printing has been performed.

Also, in the event that the printing data 404 is data which is sent tothe printer driver 203, reprinting can be performed by the reprintingrequest monitoring unit 306 displaying the job list having received thereprinting request, and enabling printing of the selected job. At thistime, the reprinting request monitoring unit 306 can dispose theinformation of the printing setting information 402 as a file to aspecified position on the external memory 11, thus enabling the settingsof the printer driver 203 to be in the same state as immediately priorto performing the previous printing. Also, when reprinting, the user canchange the printing settings by being able to open the interface of theprinter driver 203.

Next, the configuration of the operating unit 1501 of the printer 1500shown in FIG. 1 will be described in detail with reference to FIG. 6.

FIG. 6 is a model diagram of an example of the operating unit 1501 ofthe printer 1500 shown in FIG. 1. Note that a case wherein the printer1500 is an MFP is shown here.

As shown in FIG. 6, the operating unit 1501 is made up of a key inputunit 601 and a touch panel portion 602. Each of these is shown in detailin FIG. 7 and FIG. 8, respectively, and each will be described in detailbelow.

First, the key input unit 601 will be described with reference to FIG.7. FIG. 7 is a model diagram of an example of the key input unit 601shown in FIG. 6.

As shown in FIG. 7, the key input unit 601 has multiple hard keys. Anoperating unit power switch 701 is for switching between a standby mode(normal action state) and sleep mode, and can be controlled with themain power switch turned ON which performs power supply for the entiresystem. Note that the sleep mode indicates a state wherein the maincontroller (CPU 12) stops the program in an interruption standby statefor network printing or facsimile and so forth, thereby suppressingpower consumption.

The power save key 702 is a key which lowers the control temperature ofa fixed device at the time of standby mode, and necessitates time untilthe device is in a printable state, but enables suppression of powerconsumption. The control temperature can also be lowered by setting therate of power savings.

A start key 703 is a key for instructing the start of copying ortransmitting. A stop key 704 is for stopping the copying ortransmitting.

A numeric keypad 705 is for performing numeric input for various typesof settings. A clear key 706 is a key for clearing the numeric input. AnID key 707 is a key for entering a previously set code number forconfirming the operator of the MFP.

A reset key 708 is a key for invalidating the various settings and forreturning the device to the default state. A help key 709 is a key fordisplaying guidance or help. A user mode key 710 is a key for moving toa system setting screen for each user.

A counter confirmation key 711 is a key for displaying the number ofsheets which have been output, which is stored in a software counterprovided within the MFP for counting printing sheets and so forth. Bypressing this key 711, the number of output sheets can be displayed onthe touch panel portion 602, corresponding to each from action modessuch as copy/print/scan/fax and so forth, color mode such ascolor/monochrome, and paper size such as large/small.

An image contrast dial 712 is a dial for adjusting the ease of viewingthe screen, but adjusting the light of the backlighting on the liquidcrystal display of the touch panel portion 602.

An execution/memory lamp 713 is a lamp which flashes as notificationduring execution of a job or access to memory. An error lamp 714 is alamp which flashes as notification in the case of errors wherein a jobcannot be executed or a service person must be called, or wherein anoperator must be called to correct a paper jam or replenish supplies.

Next, the touch panel portion 602 will be described with reference toFIG. 8. FIG. 8 is a model diagram of an example of the touch panelportion 602 shown in FIG. 6.

With the present embodiment, the touch panel portion 602 is configuredwith an LCD (Liquid Crystal Display) and a touch panel display formedfrom a transparent electrode affixed on top thereof. Controls areprogrammed beforehand to detect when a portion of the transparentelectrode equivalent to the key displayed on the LCD is touched with afinger, and to display a separate operating screen and so forth. Thisdiagram is an initial screen for standby mode, and can display variousoperating screens according to the setting operations.

A copy tab 801 is a tab key for transitioning to an operating screen forcopying action. A sending tab 802 is a tab key for transitioning to anoperating screen which instructs sending action such as sending a fax oremail. A box tab 803 is a tab key for transitioning to a screen forinput/output operations of jobs to a box (storing means for storing jobsfor each user). An option tab 804 is a tab key for setting expansionfunctions such as scanner settings. By the user selecting (touching)these tabs 801 through 804, transition can be made to each operatingmode.

A system monitor key 805 is a key for displaying the status or situationof the MFP. By the user selecting (touching) this system monitor key805, transition can be made to a screen displaying the status orsituation of the MFP (for example, the screen shown in FIG. 9).

A color selection setting key 806 is a key for selecting in advance forcolor copies, black and white copies, or automatic selection. Amagnification setting key 807 is a key for transitioning to a screen toperform magnification settings such as same size, enlarging, orshrinking. A post-processing setting key 808 is a key for transitioningto a screen for selecting whether or not to use staples orhole-punching, and the number and position and so forth thereof. Aduplex setting key 809 is a key for transitioning to a screen forsetting whether to use simplex printing or duplex printing. A paper sizeselecting key 810 is a key for transitioning to a screen for selectingpaper supply level, paper size, and media type. An image mode settingkey 811 is a key for selecting the image mode applicable to themanuscript image such as text mode or photograph mode. A density settingkey 812 is a key for adjusting the output image to be darker or lighter.By the user selecting (touching) these various keys 806 through 812, therespective settings can be performed.

Next, a status display unit 813 is a display unit for performing simplestatus displays such as standby state, warming up, paper jams, errors,and so forth. A magnification display portion 814 is a display portionfor displaying the magnification set with the magnification setting key807. A paper size display portion 815 is a display portion fordisplaying the paper size or mode set with the paper size setting key810. A sheet count display portion 816 is a display portion fordisplaying the number of sheet specified with the numeric keypad 705, ordisplaying which sheet is being printing during operation.

Further, an interrupt key 817 is a key to be used in the event ofinterrupting with another job during copying, and by the user selecting(touching) this key, another job can interrupt the job currentlycopying.

An application mode key 818 is a key for transitioning to a screen forperforming settings such as various image processing or layouts, such ascontinuous pages, cover sheet and facing sheets, reduced layouts, imagemoving, and so forth. By the user selecting (touching) this key,transition can be made to a setting screen for application mode.

FIG. 9 is a model diagram of an example of an operating screen foroperating job history. This screen is displayed on the touch panelportion 602 in the event that the system monitor key 805 shown in FIG. 8is selected, and shows job history and enables the user to performoperations relating to a job in the history.

A job display switchover button is a button for switching betweenoperating screens relating to the job. By the user selecting (touching)this key, the user can freely switch between “spool” to display thespooled job, “job status” to display the status of a job, and “jobhistory” to display the history of a job.

A job history display portion 902 is a portion for displaying thehistory of a job, and displays the receiving number of a job, processingdate/time, department ID, job name, user name, printing results, and soforth. Note that by the user touching the job history within the jobhistory display portion 902, this job can be selected.

A selection type key 903 is a button for selecting and displaying thevarious types of job input in the MFP (for example, copying, printing,faxing, scanning, and so forth). The types of job history selected withthe selection type key 903 are displayed on the job history displayportion 902.

A scroll button 904 enables the job history display portion 902 to bescrolled when the job history display portion 902 has multiple lines andwill not all fit into the screen. A detailed display button 905 candisplay detailed information of the job selected with the job historydisplay portion 902. A list print button 906 can print the job historydisplayed on the job history display portion 902.

A mode switchover key 907 can switch to other function setting screenssuch as copying or faxing. An end key 908 ends the job history displayand can return to the screen shown in FIG. 8. By the user selecting(touching) these keys or buttons 903 through 908, processing can beexecuted corresponding to each key.

With the present embodiment, a job confirming function is added to thenormal job history display, and is configured such that a job confirmingbutton 909 is added to enable reprinting.

This job confirming button 909 can also be used in the event that a jobselected with the job history display portion 902 needs to be deleted.

When the job confirming button 909 is selected (touched), a dialog box1001 is displayed as shown in FIG. 10, and a selection can be whether todelete the selected job from history or whether to perform reprinting.

Next, an embodiment of the present invention according to theabove-described system will be described.

Note that an embodiment of the present invention enables reprinting froma user interface on the printing apparatus. In order to perform thisreprinting, according to an embodiment of the present invention, jobinformation and printing data can be saved in the memory portion of theprinting apparatus.

With the present embodiment, the system is configured so that the jobinformation and printing data (that is to say, the printing apparatusside print job data in FIG. 5) can be saved in the external memory 14 ofthe printer 1500 shown in FIG. 1. Also, the system is configured so thata function (reprinting request monitoring unit 306 shown in FIG. 3) forreceiving instructions from the printer 1500 and operating accordinglyis added to the host computer 3000.

Additionally, the host computer 3000 is configured to save theinformation specifying the printing data (job ID 401) and the printingdata 404 (that is to say, the host side print job data in FIG. 4) in theexternal memory 11 at the time of printing. With this configuration, inthe event of a reprinting request from the printer 1500, reprinting canbe performed by using the information saved in the external memory 11(the host side print job data in FIG. 4).

In an embodiment, the above reprinting processing is performed accordingto the flow described later in FIGS. 16 through 19.

Next, the procedure for reprinting will be described with reference tothe user interface shown in FIGS. 9 through 15.

First, the user selects the job to be reprinted from the user interface(the job history display portion 902 in FIG. 9) on the printer 1500.With the present embodiment, the system is configured to add a jobconfirming button 909 to the printing history display portion shown inFIG. 9 to perform reprinting.

Note that this job confirming button 909 can also be used when needingto delete a job selected with the job history display portion 902 fromhistory.

When the user selects (touches) the job confirming button 909, the CPU12 of the printer 1500 displays the dialog box 1001 as shown in FIG. 10on the touch panel portion 602 so the user can select whether to deletethe job from history or to perform reprinting.

FIG. 10 is a model diagram of an example of a dialog box for selectingdeleting or reprinting of a job of which the history is managed.

With the screen in FIG. 10, the user can display detailed informationabout the job selected with the job history display portion, and canselect whether to completely delete the job from the job history or toreprint the job.

When the user instructs (touches) an “operator-confirmed jobs completelyended” button 1002, the CPU 12 of the printer 1500 transitions thescreen on the touch panel portion 602 to a dialog box 1101 such as thatshown in FIG. 11. Further, the CPU 12 of the printer 1500 controls theinformation of the selected job (the printing apparatus side print jobdata in FIG. 5) to be deleted from the external memory 14.

FIG. 11 is a model diagram of an example of a dialog box displayed inthe case that deleting is specified for a job of which the history ismanaged.

On the other hand, if the user instructs (touches) a “re-executeoperator-confirmed jobs” button 1003, the CPU 12 of the printer 1500transitions the screen on the touch panel portion 602 to a dialog box1201 such as that shown in FIG. 12.

FIG. 12 is a model diagram of an example of a dialog box displayed inthe case that reprinting is specified for a job of which the history ismanaged.

With the screen in FIG. 12, the user selects whether to user the datawithin the printing apparatus to perform reprinting or whether toperform reprinting from the printing source host.

When the user instructs (touches) an “input re-execute request fromprinter operating unit” button 1202 on this screen, the CPU 12 of theprinter 1500 transitions the screen on the touch panel 602 to the screensuch as that shown in FIG. 13. If the user desired a different printingsetting, reprinting can be executed by performing setting changes fromthe screen in FIG. 13.

FIG. 13 is a model diagram of an example of a screen for performingprinting setting in the case that a re-execution request is input fromthe operating unit of the printer.

On the other hand, if the user instructs (touches) an “input re-executerequest from host” button 1203 on the dialog box 1201 in FIG. 12, theCPU 12 of the printer 1500 performs controls as follows. The CPU 12specifies the printing source host from the information of the job to bereprinted (the job selected in 902 in FIG. 9), and sends reprintinginstructions with the job ID attached thereto to the printing sourcehost computer. This processing within the printing apparatus isperformed according to the flow shown in FIGS. 18 and 19.

Next the reprinting procedures with the host computer 3000 will bedescribed.

With the host computer 3000, the reprinting request monitoring unit 306performs processing to receive instructions, and when reprintinginstructions are received, the reprinting request monitoring unit 306displays a dialog box such as that shown in 1401 of FIG. 14 to notifythe user that reprinting instructions have been received.

FIG. 14 is a model diagram of an example of a dialog box displayed onthe CRT 10 of the host computer 3000 in the case that the host computer3000 receives reprinting instructions from the printer 1500.

As described above, with the host computer 3000, when reprintinginstructions are received, the reprinting request monitoring unit 306displays a dialog box such as that shown with 1401 on the CRT 10, tonotify the user that reprinting instructions have been received. Whenthe “OK” button on this dialog box 1401 is clicked with a pointingdevice and so forth, the dialog box is closed.

Further, when the reprinting request monitoring unit 306 receivesreprinting instructions from the printer 1500, in the event thatmultiple reprinting instructions are received, a reprinting instructionlist 1402 is displayed on the CRT 10, for the user to select thereprinting instructions for performing reprinting (the correspondingdocument). The user selects the reprinting instructions for performingreprinting (the corresponding document) with a pointing device or akeyboard 9.

On the other hand, if other reprinting instructions are not received,the reprinting request monitoring unit 306 the reprinting instructionthereof becomes the object of reprinting.

Then when the reprinting request monitoring unit 306 has specified thereprinting instructions for performing reprinting, the job ID attachedto the reprinting instructions is obtained, and the printing data 404and printing settings 402 are obtained from the corresponding job ID.

Note that, in an embodiment, if there is no printing data 404corresponding to the above job ID in the external memory 11, reprintingcannot be performed.

If the printing data and printing settings for performing reprinting areobtained, the reprinting request monitoring unit 306 starts the printingapplication 201 corresponding to the above obtained printing data 404 asshown with 1403 in FIG. 15. Then the reprinting request monitoring unit306 transfers the printing settings 402 to the application 201, and asshown with 1404 in FIG. 15, the printing dialog box is displayed, andthe printing control means (201 through 204, 301 through 305 and soforth in FIG. 3) are set to the status thereof immediately prior toprinting (immediately prior to print job generating).

Note that, in an embodiment, if the application 201 cannot receiveprinting settings 402, the reprinting request monitoring unit 306 canalso transfer the printing settings 402 to the printer driver 203.

FIG. 15 a model diagram of the state of the reprinting requestmonitoring unit 306 having started up to the point of the screendirectly prior to printing, due to a reprinting instruction.

If printing is instructed in this state with the printing dialog box1404 and by performing necessary settings (with the UI of the printerdriver 203 which is started with a property button), the job selectedwith the printer 1500 can be reprinted.

Note that with the present embodiment, an application corresponding tothe jobs to be reprinted is started, but the process may be limited tonotifying an application corresponding to the jobs to be reprinted.

Also, in the event there is an application on the host computer 3000 tomanage the printing, the fact that reprinting instructions have beenreceived is notified to the application managing the printing. Also, theapplication managing the printing may be configured so as to displaystatus such as receiving reprinting on the host side job history list.

The above-described processing will be described below with reference tothe flowcharts in FIGS. 16 through 19.

First, the processing on the printer 1500 side will be described withreference to FIGS. 16 and 17.

FIG. 16 is a flowchart showing an example of a first control processingsequence according to the present invention, and corresponds to aprocessing sequence when the job confirming button 909 is pressed(touched) on the screen shown in FIG. 9. Note that, in an embodiment,the processing in this flowchart is realized by the CPU 12 of theprinter 1500 reading a program stored in the ROM 13 and executing this.Also, the reference numerals S1501 through S1505 in the diagramrepresent each of the steps.

First, in step S1501, when the job confirming button 909 is pressed, theCPU 12 obtains the job selected with the job history display portion 902and obtains the detailed job information from the external memory 14.

Next, in step S1502, the CPU 12 displays the dialog box 1001 (FIG. 10)which displays the detailed job information on the touch panel portion602, enabling selection of whether to completely end the job or toperform reprinting. Then when the CPU 12 detects that either the “jobscompletely ended” button 1002 or the “re-executing printing ofoperator-confirmed jobs” button 1003 is selected, the flow proceeds tostep S1503.

In step S1503, the CPU 12 determines whether or not the “re-executingprinting of operator-confirmed jobs” button 1003 is selected. Then if itis determined that the “re-executing printing of operator-confirmedjobs” button 1003 is selected (YES in step S1503), the flow proceeds tostep S1504.

On the other hand, if the CPU 12 in step S1503 determines that “jobscompletely ended” button 1002 is selected (NO in step S1503), the flowproceeds to step S1505.

In step S1505, the CPU 12 displays the dialog box 1101 shown in FIG. 11on the touch panel portion 602, completely deletes the job informationselected with the job history display portion 902 from the printingapparatus inner portion (the external memory 14), and ends theprocessing of the present flowchart.

In step S1504, the CPU 12 executes processing for reprinting (reprintingprocessing) (FIG. 17) and ends the processing of the present flowchart.

FIG. 17 is a flowchart showing an example of a second control processingsequence according to the present invention, and corresponds to thereprinting processing sequence shown in step S1504 in FIG. 16. Notethat, in an embodiment, the processing in this flowchart is realized bythe CPU 12 of the printer 1500 reading a program stored in the ROM 13and executing this. Also, the reference numerals S1601 through S1604 inthe diagram represent each of the steps.

First, in step S1601, the CPU 12 displays the dialog box 1201 shown inFIG. 12 on the touch panel portion 602, enabling selection of whether toperform reprinting by performing setting at the printing apparatus orwhether to perform reprinting at the printing source host. Then when theCPU 12 detects that either an “input re-execute request from printeroperating unit” button 1202 or “input re-execute request from host”button 1203 is selected, the flow proceeds to step S1602.

In step S1602, the CPU 12 determines whether or not the “inputre-execute request from host” button 1203 has been selected. Then in theevent it is determined that the “input re-execute request from host”button 1203 is selected (YES in step S1602), the flow is advanced forstep S1603.

On the other hand, if the CPU 12 determines in step S1503 that the“input re-execute request from printer operating unit” button 1202 hasbeen selected (NO in step S1602), the flow proceeds to step S1604.

In step S1604, the CPU 12 displays the setting screen (FIG. 13) of theprinter 1500 for the user to perform printing setting for thereprinting.

Next, in step S1605, the CPU 12 uses the printing settings which are setin step S1604 to execute the reprinting processing, and ends theprocessing of the present flowchart.

In step S1603, the CPU 12 obtains printing source host information (IPaddress and so forth) from the detailed job information and the job IDin order to perform reprinting at the printing source host. Further, theCPU 12 sends a reprinting notification attached with a job ID to thehost computer 3000 specified with the obtained host information. Theprocessing of this flowchart is then ended.

Next, the processing on the computer 3000 side will be described withreference to the flowchart in FIGS. 18 and 19.

FIG. 18 is a flowchart showing an example of a third control processingsequence according to the present invention, and is executed by thereprinting request monitoring unit 306 which is executed by the CPU 1 ofthe host computer 3000. Note that the reference numerals S1701 throughS1704 in the diagram represent each of the steps.

First, when the reprinting request monitoring unit 306 receivesinstructions from the printer 1500, determination is made in step S1701as to whether or not the received instructions relate to reprinting. Ifthe reprinting request monitoring unit 306 determines that the receivedinstructions are for other than reprinting (NO in step S1701), theprocessing of the present flowchart is ended.

On the other hand, if the reprinting request monitoring unit 306determines that the received instructions are for reprinting (YES instep S1701), the flow proceeds to step S1702.

In step S1702, the reprinting request monitoring unit 306 obtains thejob ID which is attached to the reprinting instructions, and using thisjob ID, executes processing to obtain the printing data corresponding tothe job ID saved in the external memory 11.

Then in step S1703, the reprinting request monitoring unit 306determines whether or not the printing data corresponding to the job IDin the processing in step S1702 has been obtained (has existed). Then inthe event it is determined that the printing data corresponding to thejob ID could not be obtained (did not exist) (NO in step S1703), theprocessing of the present flowchart is ended.

On the other hand, in the event that the reprinting request monitoringunit 306 determines in step S1702 that the printing data correspondingto the job ID was obtained (did exist) (YES in step S1703), the dialogbox 1401 in FIG. 14 is displayed on the CRT 10. Then, when the “OK”button on this dialog box 1401 is clicked with a pointing device and soforth, the flow proceeds to step S1704.

In step S1704, the reprinting request monitoring unit 306 uses theprinting data corresponding to the job ID obtained in step S1702 toexecute reprinting processing (FIG. 19). Then the processing of thepresent flowchart is ended.

FIG. 19 is a flowchart showing an example of a fourth control processingsequence according to the present invention, and is executed by thereprinting request monitoring unit 306 which is executed by the CPU 1 ofthe host computer 3000. Note that the reference numerals S1801 throughS1804 in the diagram represent each of the steps.

In step S1801, the reprinting request monitoring unit 306 checks whetheror not the host computer 3000 has received reprinting instructions otherthan a printing instruction request which is determined as reprintinginstruction in step S1701 in FIG. 18. Then in the event it is determinedthat other reprinting instructions have not been received (NO in stepS1801), the job corresponding to the above-mentioned printinginstructions is assumed to be the reprinting request job, and the flowproceeds to step S1803.

On the other hand, if the reprinting request monitoring unit 306determines in step S1801 that reprinting instructions other than aprinting instruction request which is determined as reprintinginstruction in step S1701 in FIG. 18 have been received (YES in stepS1801), the flow proceeds to step S1802.

In step S1802, the reprinting request monitoring unit 306 displays areprinting request job list 1402 (FIG. 14) corresponding to thereprinting instructions received by the host computer 3000 on the CRT10, and enables selection of the job for reprinting. Then when thereprinting request job is selected with a pointing device and so forth,and the OK button on the dialog box 1401 is operated, the reprintingrequest monitoring unit 306 advances the flow to step S1803.

In step S1803, the reprinting request monitoring unit 306 obtains a jobID from the reprinting instructions for the job to be reprinted, andobtains the printing data 404, printing setting information 402, andapplication information 403 corresponding to the job ID. Then as shownin FIG. 15, the reprinting request monitoring unit 306 starts theapplication 201 corresponding to the application information 403, andperforms controls so that the printing screen is opened on the CRT 10 inthe state wherein the job having received the reprinting request isprinted. Note that the printing settings 402 is controlled to betransferred to the application performing the printing and thus set, ifpossible. Then, if the application will not accept the printing settings402, controls are performed to transfer them to the printer driver 203and perform setting.

In other words, the reprinting request monitoring unit 306 reads thedata (printing data 404, printing settings 402, application information403) relating to the generating of the print job having received areprinting request from the external memory 11. Further, the reprintingrequest monitoring unit 306 performs control to set the printing controlmeans (201 through 204, 301 through 305 and so forth in FIG. 3) to thestate of that immediately prior to the print job generating, using thedata which has been read out.

Next, in step S1804, when the printing settings are changed or printinginstructions are made, the application 201 which is executed with theCPU 1 executes printing processing. Thus, a print job is generated withthe printing control means (201 through 204, 301 through 305 and soforth in FIG. 3), and is transmitted to the printer 1500. Then theprocessing of the present flowchart is ended.

Due to the above processing, in the event of performing reprinting witha printing system which performs printing from the host computer 3000 tothe printer 1500, reprinting processing can be performed from the userinterface of the printer 1500. Further, if necessary, reprintinginstructions are performed from the printer 1500 to the printing sourcehost computer 3000, and reprinting can be performed from the userinterface of the printing source host computer 3000. In other words, theprinter 1500 can specify such that the printing conditions of theprinting data for reprinting can be changed at the host computer 3000 toenable a printable state.

In other words, with the printing system of the present embodiment, theprint job specified for reprinting is not transmitted to the hostcomputer 3000, but the host computer 3000 is made to enable changes tothe printing processing conditions therein. Specifically, a job ID isspecified from the printer 1500 and is transmitted to the host computer3000. With the host computer 3000, the reprinting request monitoringunit 306 enables the print job matching the received job ID to be in astate the same as immediately prior to the sending of the print job. Thestate of immediately prior to sending indicates the state in which theapplication generating the print job is opened, and printing processingconditions (the same as the printing processing conditions of analready-printed job) are set at the printer driver. By setting theapplication program 201 and the printer driver 203 in this state, theadvantages described below can be achieved. By clicking the “OK” buttonon the printing dialog box 1404 with a pointing device or the like,after the settings have been changed on the host computer 3000 side onlyfor the portions the user desires to change, the print job forreprinting can be generated.

Thus, reprinting can be easily performed in situations such as changingthe printing processing conditions (such as page layout and so forth)which cannot be changed at the printer 1500, or changing the content ofthe printing data itself.

Accordingly, when reprinting instructions for a job which is printedwith the printing apparatus are performed from the printing apparatus,the reprinting of the job selected on the printing apparatus can beeasily performed from an information processing device such as apersonal computer or the like.

Second Exemplary Embodiment

Next, a second embodiment of the present invention will be described.

The first embodiment has been described with regard to an arrangementwherein the user selects from (1) or (2) below via the screen in FIG.12.

(1) Reprinting is performed by the printer 1500 based on printingapparatus side print job data 500 held by the external memory 14.

(2) Reprinting is requested to the host computer 3000.

Here, the print job data 500 used in the method (1) is data wherein thehost side print job data 400 received from the host computer 3000 isconverted into a bitmap format by the CPU 12 of the printer 1500. Thenfor example, a situation wherein the image data worth two pages in thehost side print job data 400 is specified in a one-page layout(hereafter referred to as a 2-in-1 specification) is assumed. In thiscase, the printing apparatus side print job data 500 is bitmap data forone page wherein the image data worth two pages is in a one-page layout.Accordingly, even if the CPU 12 attempts to change the layout duringreprinting for the layout to be in one-page increments (1-in-1), theprinting apparatus side print job data 500 cannot change to the originallayout. In other words, when reprinting using the printing apparatusside print job data 500 with the (1) method, specified printingconditions cannot be changed.

Thus, with the first embodiment, the user of the printer 1500 determineswhether the printing conditions the user desires to change at time ofreprinting are printing conditions which can be handled with the (1)method or not, and based on the determination results thereof, the userneeds to select the (1) method or the (2) method. However, in order forthe user of the printer 1500 to appropriately select the (1) method orthe (2) method, the user needs to know what type of printing conditionscan be handled with the (1) method beforehand.

Conversely, the second embodiment relates to a method for appropriatelydetermining the (1) method or the (2) method, even if the user does notknow beforehand which of (1) or (2) to select.

In the second embodiment, when the CPU 12 of the printer 1500 determinesthat the user has selected the “re-execute operator-confirmed jobs”button 1003 via the screen in FIG. 10, the screen shown in FIG. 21 isdisplayed on the touch panel portion 602. The CPU 12 of the printer 1500determines whether the use has selected a “change printing conditions”button 2101 via the screen shown in FIG. 21 or has selected a “do notchange printing conditions” button 2102. When the CPU 12 of the printer1500 has determined that the user has selected the “change printingconditions” button 2101, the screen shown in FIG. 22 is displayed on thetouch panel portion 602. When changing the printing conditions, the CPU12 of the printer 1500 determines which of the “sheet” button 2201,“simplex/duplex” button 2202, “staple” button 2203, or “page layout”button 2204 the user has selected. In the event that the CPU 12 of theprinter 1500 determines that the user has selected the “sheet” button2201 via the screen in FIG. 22, the screen shown in FIG. 23 is displayedon the touch panel portion 602. Then the CPU 12 selects the sheets (forexample, A3-size normal paper corresponding to cassette 1) correspondingto the button selected by the user via the screen in FIG. 23 (one of2301, 2302, 2303, 2304) as the paper to be used for reprinting.

Also, in the event that the CPU 12 determines that the user has selectedthe “simplex/duplex” button 2202 in the screen shown in FIG. 22, thescreen shown in FIG. 24 is displayed on the touch panel portion 602.Then if the button selected by the user via the screen in FIG. 24 is the“simplex” button 2401, the CPU 12 sets printing data 505 to performsimplex printing as a printing condition of the reprinting. On the otherhand, if the button selected by the user via the screen in FIG. 24 isthe “duplex” button 2402, the CPU 12 sets printing data 505 to performduplex printing as a printing condition of the reprinting.

Also, if the CPU 12 determines that the user has selected the “staple”button 2203 on the screen shown in FIG. 22, the screen shown in FIG. 25is displayed on the touch panel portion 602. Then, if the buttonselected by the user via the screen in FIG. 25 is the “ON” button 2501,the CPU 12 sets the printing data 505 to perform stapling processing onthe sheet stack which is subjected to printing processing as a printingcondition of the reprinting. On the other hand, if the button selectedby the user via the screen in FIG. 25 is the “OFF” button 2502, the CPU12 sets the printing data 505 to not perform stapling processing on thesheet stack which is subjected to printing processing as a printingcondition of the reprinting.

As described above, in the event that the user selects the “sheet”button 2201, the “simplex/duplex” button 2202, or the “staple” button2203 in FIG. 22, reprinting can be performed based on the printingapparatus side print job data 500, and so printing data 505 included inthe printing apparatus side print job data 500 is rewritten.

On the other hand, in the event that the user selects the “page layout”button 2204, the actions differ from the cases wherein the other buttonsare selected. Specifically, similar actions are performed as in the casewherein the user selects the “input re-execute request from host” button1203 in FIG. 12 of the first embodiment. In other words, by executingthe flow in FIGS. 18 and 19, the CPU 12 requests reprinting as to thehost computer 3000, and causes the host computer 3000 to be in a statewherein the screen shown in FIG. 15 is displayed.

Here, the actions executed by the CPU 12 by displaying the screens inFIGS. 21 through 25 on the touch panel portion 602 will be describedwith reference to FIG. 27.

In step S2701, the CPU 12 determines which button the user has selectedvia the screen shown in FIG. 21, and in the event that the “changeprinting conditions” button 2101 is selected (YES in step S2701), theflow advances to step S2702, and in the event that the “do not changeprinting conditions” button 2102 is selected (NO in step S2701), theflow advances to step S2707.

In step S2702, the CPU 12 determines whether or not the button selectedby the user via the screen in FIG. 22 is the “page layout” button 2204,and in the event that the “page layout” button 2204 is selected (YES instep S2702), the flow advances to step S2703, and if not (NO in stepS2702), the flow advances to step S2706.

In step S2703, in order to perform reprinting at the host computer 3000,the CPU 12 extracts the host PC IP address 504 and the job ID 501 fromthe printing apparatus side print job data 500. Then the CPU 12 sendsthe reprinting request including the job ID 501 to the host computer3000 specified by the host PC IP address 504, and the flow proceeds tostep S2704. Note that in step S2704, the CPU 12 determines whether ornot the host computer 3000 has received the host side print job data 400corresponding to the reprinting request, which is sent by executing theflow shown in FIG. 19, and in the event that it is received (YES in stepS2704), the flow advances to step S2705.

In step S2705, the CPU 12 executes the printing processing received fromthe host computer 3000 based on the host side print job data 400corresponding to the reprinting request.

On the other hand, in step S2702, in the event that the CPU 12determines that the printing condition changes selected by the user arefor other than page layout, step S2706 is executed. Specifically, theprinting conditions included in the printing data 505 of the printingapparatus side print job data 500 are changed so that the CPU 12 canreprint with the printing conditions set by the user via the screens inFIGS. 23 and 24, and the flow advances to step S2707.

In step S2707, the CPU 12 executes printing processing based on theprinting apparatus side print job data 500 wherein the printingconditions are changed in step S2706.

As described above, according to the second embodiment, even if the userdoes not know which of the above-described (1) or (2) should beselected, the (1) method or the (2) method can be appropriatelydetermined according to the printing conditions set by the user at thetime of reprinting.

Note that with the above description, if the user selects the “pagelayout” button 2204 via the screen in FIG. 22, the reprinting requestincluding the job ID is assumed to be sent to the host computer 3000,but other arrangements may be made as well. Specifically, in the eventthat the “page layout” button 2204 is selected via the screen shown inFIG. 22, the screen shown in FIG. 26 is further displayed on the touchpanel portion 602, the specific types of page layouts can be offered tothe user for selection. In this case, the CPU 12 may include theinformation showing which page layout method the user has selected viathe screen in FIG. 26 in the reprinting request. Then, in the event thatthe page layout method is included in the reprinting request, the hostcomputer 3000 can be advanced to the screen immediately prior toprinting, in the state of reflecting the page layout method. Thus, whenexecuting the reprinting, the host computer 3000 can be in the stateimmediately prior to sending the print job, with the page layout methodspecified at the printer 1500 and with the specification thereofreflected. Note that the in the event that printing conditions to bechanged for reprinting is included in the reprinting request, the hostcomputer 1500 can be made to send the host side print job data 400wherein the printing conditions are changed.

It is needless to say that the present invention is not restricted tothe above-described configuration of various types of data and thecontent thereof, and that various configurations or content can be usedaccording to uses or objects.

While embodiments have been described above, the present invention canbe carried out in embodiments such as a system, device, method, program,or storage medium and so forth. Specifically, the present invention canbe applied to a system configured from multiple devices, or can beapplied to a device formed from one unit.

The configuration of the memory map of a storage medium storing varioustypes of data process programs which are readable by an informationprocessing device and a printing apparatus configuring the printingsystem relating to the present invention will be described withreference to the memory map shown in FIG. 20.

FIG. 20 is a diagram describing a memory map of a storage medium(recording medium) storing various types of data processing programswhich are readable with an information processing device (host computer3000) and printing apparatus (printer 1500) configuring the printingsystem relating to the present invention.

Note that although not specifically shown in a diagram, information formanaging a program group stored in a storage medium, for example versioninformation, creator, and so forth, and information dependent on theoperating system and so forth on the program readout side, for exampleicons and so forth for displaying identification of the programs, mayalso be stored.

Further, data associated with the various types of programs are alsomanaged by the above directory. Also, there may be cases whereinprograms for installing various programs onto a computer, or programsfor decompressing in the event that a program being installed has beencompressed, are also be stored.

The functions shown in FIGS. 16 through 19 according to the presentembodiment may be implemented by the host computer with programsinstalled externally. In such cases, the present invention can beapplicable even when the information group including the program issupplied to an output device from an external storage medium via anetwork, or by a storage medium such as a CD-ROM, flash memory, FD, andso forth.

As described above, storage media having recorded the program code forthe software to realize the functions of the embodiment as describedabove are supplied to the system or to the device. It goes withoutsaying that the objects of the present invention are achieved by thecomputer (or CPU or MPU) of the system or device to readout and executethe program code stored in the storage medium.

In such cases, the program code itself which is read out from thestorage medium realizes the new functions of embodiments of the presentinvention, the storage medium storing this program code configuresembodiments of the present invention.

Accordingly, the program can have any program format such as objectcode, a program executed by an interpreter, script data supplied to theoperating system, and so forth, as long as it has the functions of theprogram.

As a storage medium for supplying the program, for example a flexibledisk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R,CD-RW, magnetic tape, non-volatile memory card, ROM, DVD, and so forthcan be used.

In this case, the program code itself read out from the storage mediumrealizes the functions of the embodiments as described above, and thestorage medium having stored the program code configures the presentinvention.

As another method for supplying the program, connecting to an Internethome page using a browser on the client computer, and downloading theprogram itself of the present invention from the home page to a storagemedium such as a hard disk can also be performed to supply the program.Also, a file including compression and automatic installation functionscan be downloaded from the home page to a storage medium such as a harddisk to supply the program. Also, supplying the program can be achievedby dividing the program code configuring the program of the presentinvention into multiple files, and having each of the files to bedownloaded from different web pages. In other words, a WWW server or FTPserver which enables multiple users to download the program files forrealizing the function processing according to the present inventionwith a computer are also included in the scope of claims of the presentinvention.

Also, the program of the present invention can also be encoded andstored on a storage medium such as a CD-ROM and distributed to users.Further, for users having cleared predetermined conditions, keyinformation for decoding the code can be downloaded from a web page viathe Internet. Further, by using this key information, the encodedprogram can be executed and realized by installing the program onto thecomputer.

Also, by executing the program code read out by the computer, not onlyare the functions according to the above-described embodiment realized,but it goes without saying that the following configurations are alsoincluded. For example, based on instructions from the program code, theoperating system which is running on the computer can perform a portionor all of the actual processing, thus the functions according to theabove-described embodiment can be realized, and this is included aswell.

Further, it goes without saying that an arrangement is included whereinthe program code read out from the storage medium is written into thememory attached to a function expansion unit which is connected to acomputer or a function expansion board inserted into a computer,whereupon, based on the instructions from the program code written intothis memory, the function expansion board or the CPU and so forthattached to the function expansion unit performs a portion or all of theactual processing, thereby realizing the functions of theabove-described embodiment by the processing thereof.

Also, the present invention may be applied to a system configured frommultiple units or from a device formed from one unit. Also, it goeswithout saying that the present invention can be applicable in cases ofbeing realized by supplying the program to a system or device. In such acase, the system or device can obtain the advantages of the presentinvention by reading the storage medium having stored the programtherein illustrated by the software for the purpose of achieving thepresent invention to the system or device.

The present invention is not limited to the above-mentioned embodiments,but can take various forms (including organic combinations of thevarious embodiments) based on the intent of the present invention, andthese are not to be excluded from the scope of the present invention.

Various examples and embodiments have been shown to describe the presentinvention, however, it will be apparent to one skilled in the art thatthe present invention should not be restricted thereto, and that variousmodifications and adaptations can be made without departing from thespirit and scope of the present invention.

As shown above, with the present embodiment, when performing reprintingwith a printing system for performing printing from the host computer tothe printing apparatus, reprinting processing can be performed from theuser interface of the printing apparatus. Further, if needed, reprintinginstructions can be made from the printing apparatus side to theprinting source host computer, and the state of the host computer can becontrolled so that reprinting from the user interface of the printingsource host computer can be easily performed.

Note that configurations combining the various modification examplesshown with the above-described embodiments are all also included in thepresent invention.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all modifications, equivalent structures and functions.

This application claims the benefit of Japanese Application No.2006-048942 filed Feb. 24, 2006, which is hereby incorporated byreference herein in its entirety.

1. A printing system comprising: an information processing apparatus;and a printing apparatus which receives print jobs transmitted from theinformation processing apparatus and performs printing processing; theinformation processing apparatus including a first holding unitconfigured to hold application data which can be used by an applicationprogram which is executable by the information processing apparatus, agenerating unit configured to generate a print job based on theapplication data held by the first holding unit; a transmitting unitconfigured to transmit the print job generated by the generating unit tothe printing apparatus, and a first control unit configured to controlthe print job to be transmitted by the transmitting unit, in the casethat a reprinting request is received from the printing apparatus forexecuting reprinting based on the application data held by the firstholding unit, and the printing apparatus including a receiving unitconfigured to receive the print job transmitted by the transmitting unitof the information processing apparatus, a converting unit configured toconvert the print job received by the receiving unit into printing data,a second holding unit configured to hold the printing data converted bythe converting unit, a printing unit configured to execute printingprocessing based on the printing data converted by the converting unit,a changing unit configured to change at least one of a plurality ofprinting conditions in a case where reprinting of the print job is to beexecuted by the printing apparatus, based on the data held by the firstholding unit or the second holding unit, a selecting unit configured toselect whether to execute reprinting based on the application data heldby the first holding unit or to execute reprinting based on printingdata held by the second holding unit, according to the at least one of aplurality of printing conditions changed with the changing unit, and asecond control unit configured to perform control such that, in an eventthat the selecting unit selects executing of reprinting based on theapplication data, the reprinting request is transmitted to theinformation processing apparatus, and in an event that executing ofreprinting based on the printing data is selected, reprinting based onthe printing data held by the second holding unit is performed.
 2. Theprinting system according to claim 1, wherein the selecting unit selectsexecuting of reprinting based on the application data held by the firstholding unit in the event that the at least one of a plurality ofprinting conditions changed by the changing unit relate to page layout.3. The printing system according to claim 1, wherein the printingapparatus has an extracting unit configured to extract specifiedinformation which specifies a print job corresponding to the reprintingbased on history information related to the printing data whereinprinting processing is performed by the printing unit; and wherein thesecond control unit transmits the reprinting request including thespecified information extracted by the extracting unit to theinformation processing device, in the event that the selecting unitselects executing of reprinting based on the application data; andwherein the first control unit performs control to transmit the printjob based on the application data corresponding to the specifiedinformation to the transmitting unit, in the event that the reprintingrequest including the specified information is received.
 4. The printingsystem according to claim 1, wherein the first control unit performcontrol such that the generating unit is in a state capable ofgenerating print jobs based on the application data, according to thereprinting request being received from the printing apparatus.
 5. Theprinting system according to claim 1, wherein the first control unitcauses the generating unit to generate print jobs corresponding to thechanging information, in the event that the reprinting request receivedby the printing apparatus includes changing information for the purposeof changing the at least one of a plurality of printing conditions. 6.The printing system according to claim 1, wherein the first holding unitlimit data holding based on a previously set holding data count oramount of empty memory resources; and wherein the second holding unitlimits data holding based on the previously set holding data count oramount of empty memory resources.
 7. A printing apparatus which receivesa print job from an information processing apparatus having a firstholding unit which stores application data and performs printingprocessing, the printing apparatus comprising: a receiving unitconfigured to receive the print job from the information processingapparatus; a converting unit configured to convert the print jobreceived by the receiving unit into printing data; a second holding unitconfigured to hold the printing data converted by the converting unit; aprinting unit configured to execute printing processing based on theprinting data converted by the converting unit; a changing unitconfigured to change at least one at least one of a plurality ofprinting conditions in a case where reprinting of the print job is to beexecuted by the printing apparatus, based on the data held by the firstholding unit or the second holding unit; a selecting unit configured toselect whether to execute reprinting based on the application data heldby the first holding unit or to execute reprinting based on printingdata held by the second holding unit, according to the at least one of aplurality of printing conditions changed with the changing unit; and acontrol unit configured to perform control such that, in an event thatthe selecting unit selects executing of reprinting based on theapplication data, the reprinting request is transmitted to theinformation processing apparatus, and in an event that executing ofreprinting based on the printing data is selected, reprinting based onthe printing data held by the second holding unit is performed.
 8. Theprinting apparatus according to claim 7, wherein the selecting unitselects executing of reprinting based on the application data hold bythe first holding unit in the event that the at least one of a pluralityof printing conditions changed by the changing unit relate to pagelayout.
 9. The printing apparatus according to claim 7, wherein theprinting apparatus has an extracting unit configured to extractspecified information which specifies a print job corresponding to thereprinting based on history information related to the printing datawherein printing processing is performed by the printing unit; andwherein the control unit transmits a reprinting request including thespecified information extracted by the extracting unit to theinformation processing device, in the event that the selecting unitselects executing of reprinting based on the application data.
 10. Theprinting apparatus according to claim 7, wherein the first holding unitlimits data holding based on a previously set holding data count oramount of empty memory resources; and wherein the second holding unitlimits data holding based on the previously set holding data count oramount of empty memory resources.